#ifndef quaternion_h__
#define quaternion_h__

namespace gecko
{

class Quaternion
{
public:
	Quaternion();
	Quaternion(float _x, float _y, float _z, float _w);
	Quaternion(const Vector3f& v, float _w);

	float x;
	float y;
	float z;
	float w;
};

inline Quaternion::Quaternion()
	: x(0.0f)
	, y(0.0f)
	, z(0.0f)
	, w(0.0f) 
{

}

inline Quaternion::Quaternion(float _x, float _y, float _z, float _w)
	: x(_x)
	, y(_y)
	, z(_z)
	, w(_w) 
{

}

inline Quaternion::Quaternion(const Vector3f& v, float _w)
	: x(v.x)
	, y(v.y)
	, z(v.z)
	, w(_w) 
{

}

}

#endif // quaternion_h__